package behavior.observer.java;

public class Demo {
    public static void main(String[] args) {
        // 这个观察者用的有点小尴尬 应该是更新主题的一个属性，而不是观察者的一个属性
        WarfareSubject warfare = new WarfareSubject("战争1");
        WarfareObserver warfareObserver = new WarfareObserver("观察者1",100);
        warfare.addObserver(warfareObserver);
        warfareObserver = new WarfareObserver("观察者2",120);
        warfare.addObserver(warfareObserver);
        warfareObserver = new WarfareObserver("观察者3",123);
        warfare.addObserver(warfareObserver);
        warfare.add();
        warfare.add();
        warfare.remove();
        for (int i = 0; i < 10000; i++) {
            if(warfareObserver.getSolidersNum() <= 0){
                break;
            }
            Integer random = (int) (Math.random() * 10);
            if (random > 5) {
                warfare.add();
            } else {
                warfare.remove();
            }
        }


       /* warfareObserver = new WarfareObserver("观察者2");

        warfare.add();
        warfare.add();
        warfare.remove();*/

    }
}
